<html xmlns="http://www.w3.org/1999/xhtml"
	xmlns:ui="http://java.sun.com/jsf/facelets"
	xmlns:h="http://java.sun.com/jsf/html"
	xmlns:p="http://primefaces.org/ui"
	xmlns:f="http://java.sun.com/jsf/core">
	<f:view>
		<p:tabView id="tab">
		<p:tab title="Dados Pessoais">
			<h:panelGroup id="group_verifica_cpf" rendered="#{!funcionarioManager.isCpfValido}">
				<h:panelGrid columns="2">
					
					<h:outputText value="CPF" />
					<h:outputText value="" />
					<p:inputMask id="cpf" mask="999.999.999-99" value="#{funcionarioManager.funcionario.cpf}" required="true" label="CPF" converter="cpfConverter" />
					<p:commandButton value="Verificar" id="verificar_cpf" process="group_verifica_cpf" update=":form:panel_funcionario" 
							action="#{funcionarioManager.validateCpf}" />
					
					
				</h:panelGrid>
			</h:panelGroup>
			
			<h:panelGroup rendered="#{funcionarioManager.isCpfValido}">
				<h:panelGrid columns="2" cellpadding="0" cellspacing="0">
				<h:outputText value="CPF" />
				<h:outputText value="Nome" />
				<p:inputMask mask="999.999.999-99" id="cpf_read" value="#{funcionarioManager.funcionario.cpf}" required="true" label="CPF" converter="cpfConverter" maxlength="14" readonly="true"/>
				<h:inputText value="#{funcionarioManager.funcionario.nome}" id="nome" label="Nome" required="true" maxlength="255" style="width:400px;">
					<f:validateLength maximum="255" minimum="2"/>
				</h:inputText>
			</h:panelGrid>
			
			<h:panelGrid columns="3" cellpadding="0" cellspacing="0">
				<h:outputText value="RG" />
				<h:outputText value="Nascimento" />
				<h:outputText value="Sexo" />
				
				<h:inputText value="#{funcionarioManager.funcionario.rg}" maxlength="255" id="rg" label="RG">
					<f:validateLength maximum="255" minimum="0"/>
				</h:inputText>
				<p:calendar value="#{funcionarioManager.funcionario.dataNascimento}" datePattern="dd/MM/yyyy" yearRange="1900" locale="pt"
							label="Data de Nascimento" id="nascimento" navigator="true" readOnlyInputText="true" />
				<h:selectOneRadio value="#{funcionarioManager.funcionario.sexo}" required="true" label="Sexo" id="sexo">
					<f:selectItem itemValue="M" itemLabel="Masculino" />
					<f:selectItem itemValue="F" itemLabel="Feminino" />
				</h:selectOneRadio>
			</h:panelGrid>
				
			</h:panelGroup>
			
			<p:panel header="Endereço" rendered="#{funcionarioManager.isCpfValido}">
				<ui:include src="/geral/paginas/geral/formEndereco.xhtml" />
			</p:panel>
			<p:panel header="Telefones" rendered="#{funcionarioManager.isCpfValido}">
				<ui:include src="/geral/paginas/geral/formTelefone.xhtml" />
			</p:panel>
			
		</p:tab>
		<p:tab title="Dados Profissionais" rendered="#{funcionarioManager.isCpfValido}">
			<h:panelGrid columns="2">
				
				<h:outputText value="Matrícula" />
				<h:inputText value="#{funcionarioManager.funcionario.matricula}" />
				
				<h:outputText value="Cargo" />
				<h:selectOneMenu value="#{funcionarioManager.funcionario.cargo.id}" label="Cargo" id="cargo">
					<f:selectItem itemLabel="- Selecione - " />
					<f:selectItems value="#{funcionarioManager.listCargo}" var="ps" itemLabel="#{ps.cargo}" itemValue="#{ps.id}"/>
				</h:selectOneMenu>
				
				<h:outputText value="Função" />
				<h:selectOneMenu value="#{funcionarioManager.funcionario.funcao.id}" label="Função" id="funcao">
					<f:selectItem itemLabel="- Selecione - " />
					<f:selectItems value="#{funcionarioManager.listFuncao}" var="ps" itemLabel="#{ps.funcao}" itemValue="#{ps.id}"/>
				</h:selectOneMenu>
				
				<h:outputText value="Horas Trabalhadas por Dia" />
				<h:selectOneMenu value="#{funcionarioManager.funcionario.horarioFuncionario.id}" label="Horário do Funcionário" id="horario">
					<f:selectItem itemLabel="- Selecione - " />
					<f:selectItems value="#{funcionarioManager.listHorario}" var="ps" itemLabel="#{ps.titulo}" itemValue="#{ps.id}"/>
				</h:selectOneMenu>
				
				<h:outputText value="Data de Admissão" />
				<p:calendar value="#{funcionarioManager.funcionario.dataEntrada}" datePattern="dd/MM/yyyy" yearRange="1900" locale="pt"
							label="Data de Admissão" id="admissao" navigator="true" readOnlyInputText="true" />
				
				<h:outputText value="Data de Demissão" />
				<p:calendar value="#{funcionarioManager.funcionario.dataSaida}" datePattern="dd/MM/yyyy" yearRange="1900" locale="pt"
							label="Data de Demissão" id="demissao" navigator="true" readOnlyInputText="true" />
				
				<h:outputText value="Em férias?" />
				<h:selectBooleanCheckbox value="#{funcionarioManager.funcionario.isFerias}" />
				
				<h:outputText value="Data de Início das Férias" />
				<p:calendar value="#{funcionarioManager.funcionario.dataInicioFerias}" datePattern="dd/MM/yyyy" yearRange="1900" locale="pt"
							label="Data de Início das Férias" id="inicioFerias" navigator="true" readOnlyInputText="true" />
							
				<h:outputText value="Data de Retorno das Férias" />
				<p:calendar value="#{funcionarioManager.funcionario.dataRetornoFerias}" datePattern="dd/MM/yyyy" yearRange="1900" locale="pt"
							label="Data de Retorno das Férias" id="retornoFerias" navigator="true" readOnlyInputText="true" />
				
			</h:panelGrid>
			
		</p:tab>
		<p:tab title="Custo com Funcionário" rendered="#{funcionarioManager.isCpfValido}">
			<script type="text/javascript">
				$(function(){
					$(".salarioBase").maskMoney({thousands:'.', decimal:','});
				})
				$(function(){
					$(".vr").maskMoney({thousands:'.', decimal:','});
				})
				$(function(){
					$(".vt").maskMoney({thousands:'.', decimal:','});
				})
				$(function(){
					$(".fgts").maskMoney({thousands:'.', decimal:','});
				})
				$(function(){
					$(".inss").maskMoney({thousands:'.', decimal:','});
				})
				$(function(){
					$(".perctVT").maskMoney({thousands:'.', decimal:','});
				})
			</script>
		
			<h:panelGrid columns="2" id="panel_proventos">
				<h:outputText value="Salário Base" styleClass="required"/>
				<h:panelGroup>
					<h:inputText styleClass="salarioBase" value="#{funcionarioManager.funcionario.proventos.salarioBase}" required="true" style="width: 90px;text-align: right;">
						<f:convertNumber currencySymbol="R$" pattern="#,##0.00;(#,##0.00)" />
					</h:inputText>
					<h:outputText value="(R$)" />
				</h:panelGroup>
				
				<h:outputText value="Total de Horas Trabalhadas por Mês" />
				<h:inputText value="#{funcionarioManager.funcionario.proventos.totalHorasMensal}" style="width: 90px;text-align: right;"/>
				
				<h:outputText value="Percentual FGTS" />
				<h:panelGroup>
					<h:inputText styleClass="fgts" value="#{funcionarioManager.funcionario.proventos.percentualFGTS}" style="width: 90px;text-align: right;">
						<f:convertNumber pattern="#,##0.00;(#,##0.00)" />
					</h:inputText>
					<h:outputText value="%" />
				</h:panelGroup>
				
				<h:outputText value="Percentual INSS" />
				<h:panelGroup>
					<h:inputText styleClass="inss" value="#{funcionarioManager.funcionario.proventos.percentualINSS}" style="width: 90px;text-align: right;">
						<f:convertNumber pattern="#,##0.00;(#,##0.00)" />
					</h:inputText>
					
					<h:outputText value="%" />
				</h:panelGroup>
				
				
				<h:outputText value="Valor pago correspondente a Vale Refeição Mensal" />
				<h:panelGroup>
					<h:inputText styleClass="vr" value="#{funcionarioManager.funcionario.proventos.valorValeRefeicao}" style="width: 90px;text-align: right;">
						<f:convertNumber currencySymbol="R$" pattern="#,##0.00;(#,##0.00)" />
					</h:inputText>
					<h:outputText value="(R$)" />
				</h:panelGroup>
				
				<h:outputText value="Valor pago correspondente a Vale Transporte Mensal" />
				<h:panelGroup>
					<h:inputText styleClass="vt" value="#{funcionarioManager.funcionario.proventos.valorValeTransporte}" style="width: 90px;text-align: right;">
						<f:convertNumber currencySymbol="R$" pattern="#,##0.00;(#,##0.00)" />
					</h:inputText>
					<h:outputText value="(R$)" />
				</h:panelGroup>
				
				<h:outputText value="Percentual de Desconto sobre Vale Transporte" />
				<h:panelGroup>
					<h:inputText styleClass="perctVT" value="#{funcionarioManager.funcionario.proventos.percentualDescontoValeTransporte}" style="width: 90px;text-align: right;">
						<f:convertNumber pattern="#,##0.00;(#,##0.00)" />
					</h:inputText>
					<h:outputText value="%" />
				</h:panelGroup>
				
				
				<h:outputText value="Custo Efetivo Total" rendered="#{funcionarioManager.funcionario.proventos.custoEfetivoTotal != null}" />
				<h:panelGroup>
					<h:outputText value="R$" rendered="#{funcionarioManager.funcionario.proventos.custoEfetivoTotal != null}"/>
					<h:outputText value="#{funcionarioManager.funcionario.proventos.custoEfetivoTotal}" rendered="#{funcionarioManager.funcionario.proventos.custoEfetivoTotal != null}">
						<f:convertNumber currencySymbol="R$" pattern="#,##0.00;(#,##0.00)" />
					</h:outputText>
				</h:panelGroup>
				
				
				<h:outputText value="Custo Efetivo Total por Hora Trabalhada" rendered="#{funcionarioManager.funcionario.proventos.custoEfetivoTotal != null}"/>
				<h:panelGroup>
					<h:outputText value="R$" rendered="#{funcionarioManager.funcionario.proventos.custoEfetivoTotal != null}"/>
					<h:outputText value="#{funcionarioManager.funcionario.proventos.custoEfetivoTotalHora}" rendered="#{funcionarioManager.funcionario.proventos.custoEfetivoTotal != null}">
						<f:convertNumber currencySymbol="R$" pattern="#,##0.00;(#,##0.00)" />
					</h:outputText>
				</h:panelGroup>
				
				<p:commandButton value="Gerar Custo Efetivo Total" action="#{funcionarioManager.calcularCusto}" update=":form:tab:panel_proventos :maskMoney" />
				<h:outputText value="" rendered="#{funcionarioManager.funcionario.proventos.custoEfetivoTotal != null}"/>
				
				
				
			</h:panelGrid>
		</p:tab>
		<p:tab title="Dados de Acesso ao Sistema" rendered="#{funcionarioManager.isCpfValido}">
			<h:panelGrid columns="2">
				<h:outputText value="Perfil" />
				<h:selectOneMenu value="#{funcionarioManager.funcionario.usuario.perfilUsuario.id}" label="Perfil" id="perfil">
					<f:selectItem itemLabel="- Selecione - " />
					<f:selectItems value="#{funcionarioManager.listPerfil}" var="ps" itemLabel="#{ps.nomePerfil}" itemValue="#{ps.id}"/>
				</h:selectOneMenu>
				
				<h:outputText value="Usuário do Sistema" />
				<h:inputText value="#{funcionarioManager.funcionario.usuario.login}" />
				
				<h:outputText value="Senha" />
				<p:password value="#{funcionarioManager.funcionario.usuario.senha}" />
			</h:panelGrid>
			
		</p:tab>
	</p:tabView>
		
	<p:commandButton action="#{funcionarioManager.save}" value="Salvar" rendered="#{funcionarioManager.isCpfValido and funcionarioManager.funcionario.id == null}" update="form" />
	<p:commandButton action="#{funcionarioManager.update}" value="Salvar" rendered="#{funcionarioManager.isCpfValido and funcionarioManager.funcionario.id != null}" update="form"  />
				
	</f:view>
</html>